import java.util.*;
/*给你一个字符串 s ，返回 s 中 长度为 3 的不同回文子序列 的个数。

即便存在多种方法来构建相同的子序列，但相同的子序列只计数一次。

回文 是正着读和反着读一样的字符串。

子序列 是由原字符串删除其中部分字符（也可以不删除）且不改变剩余字符之间相对顺序形成的一个新字符串。
输入：s = "aabca"
输出：3
例如，"ace" 是 "abcde*/
public class Main {
    public static int seek(String s) {
        int count = 0;
        int n = s.length();
        for (char c = 'a'; c < 'z'; c++) {
            int st = 0, en = n - 1;
            // 找到收尾想等片段
            while (st < en && s.charAt(st) != c) {
                st++;
            }
            while (st < en && s.charAt(en) != c) {
                en--;
            }
            // 记录每个区段的元素个数
            Set<Character> m = new HashSet<Character>();
            for (int i = st + 1; i < en; i++) {
                m.add(s.charAt(i));
            }
            count += m.size();
        }
        return count;
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        int count = seek(s);
        System.out.println(count);
    }
}